home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Cream of the Crop 25
/
Cream of the Crop 25.iso
/
bbs
/
pcsuni1.zip
/
VRS502.ZIP
/
VRS-M2.PPE
(
.txt
)
< prev
next >
Wrap
PCBoard Programming Language Executable
|
1997-04-06
|
9KB
|
374 lines
;------------------------------------------------------------------------------
; .ss.
; `²²'
; .,sS$Ss,,s$ .,sS$$$Ss. .,sS$Ss,,s$ .ss. .sSs.
; .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
; $$$' .$$$' $$$²Sçsµ²' .$$$' .$$$'.$$$' .$$$' `$$b.
; $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$' ;$$$
; `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
; .sS²°$$$²²°"' d²°'
; .$$² .$$'
; $$$.,d$$'
; `²S$$S²'
;------------------------------------------------------------------------------
; P.P.L.X. 2.OO (C)1996 - Lone Runner / AEGiS CoRP'96
;------------------------------------------------------------------------------
; PPE 3.2O (Encryption type I) - Analysis ON - Postprocessing ON
;------------------------------------------------------------------------------
Integer INTEGER001
Integer INTEGER002
Integer INTEGER003
Integer INTEGER004
Integer INTEGER005
Integer INTEGER006
Integer INTEGER007
Integer INTEGER008
Integer INTEGER009
Integer INTEGER010
Integer TINTEGER011(3)
Integer INTEGER012
Integer INTEGER013
Integer TINTEGER014(3)
Integer INTEGER015
String STRING001
String STRING002
String STRING003
String STRING004
String STRING005
String STRING006
String STRING007
String STRING008
String STRING009
;------------------------------------------------------------------------------
Goto LABEL001
End
If (0 == 0) STRING001 = "NO"
If (0 == 1) STRING001 = "YES"
EndFunc
:LABEL001
STRING002 = String(PcbNode())
If (PcbNode() == 0) STRING002 = "A"
STRING009 = GetEnv(STRING002 + "RECNO")
STRING009 = ToInteger(STRING009)
STRING006 = "@X01≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡@X0F"
DOpen 0, PPEPath() + "VRS.DBF", 0
DTop 0
INTEGER007 = DGet(0, "LOTTO")
DGet 0, "BANK_INT", INTEGER008
DGet 0, "TRSF_LIMIT", INTEGER009
DCloseAll
DOpen 0, PPEPath() + "USER.DBF", 0
DGo 0, STRING009
INTEGER001 = DRecNo(0)
DGet 0, "CASH", INTEGER002
DGet 0, "BANKED", INTEGER003
DGet 0, "TRSF_AMT", INTEGER010
DGet 0, "HANDLE", STRING007
DGet 0, "FILE_NUM", STRING008
DCloseAll
STRING007 = Trim(Mixed(STRING007), " ")
Cls
PrintLn " @X0A░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░@X07"
PrintLn "@X0A ░┌───────────────────────────────────────────────────────────────────┐░@X07"
PrintLn "@X0A ░│ │░@X07"
PrintLn "@X0A ░│ WELCOME TO │░@X07"
PrintLn "@X0A ░│ │░@X07"
PrintLn "@X0A ░│ @X0B ╖╓ ╓╖ ╓╖ ╓╖ ╥╖ ╖╓ ╓╖ ╓╖ ╖╓ ╥ ╓╖ ╓╖ ╓╖ @X0A│░@X07"
PrintLn "@X0A ░│ @X0B ╙╖ ╟╢ ║║ ╟╢ ║║ ║║ ╙╖ ╟╢ ║║ ║ ║║ ║╖ ╙╖ @X0A│░@X07"
PrintLn "@X0A ░│ @X0B ╜╙ ╜╙ ╜╙ ╜╙ ╨╜ ╙╜ ╙╜ ╜╙ ╙/ ╨ ╜╙ ╙╜ ╙╜ @X0A│░@X07"
PrintLn "@X0A ░│ @X0A│░@X07"
PrintLn "@X0A ░│ @X8CPLEASE HOLD YOUR ID OVER THE SCANNER@X0F @X0A│░@X07"
PrintLn "@X0A ░│ │░@X07"
PrintLn "@X0A ░├───────────────────────────────────────────────────────────────────┤░@X07"
PrintLn "@X0A ░│ @X0C░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░@X0A │░@X07"
PrintLn "@X0A ░│ @X84░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░@X0A │░@X07"
PrintLn "@X0A ░│ @X0C░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░@X0A │░@X07"
PrintLn "@X0A ░└───────────────────────────────────────────────────────────────────┘░@X07"
PrintLn "@X0A ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░@X07"
Call PPEPath() + "VRS-M19.PPE"
:LABEL002
Cls
PrintLn "@POS:5@@X0A┌───────────────────────────────────────────────────────────────────@X0A┐@X07"
PrintLn "@POS:5@@X0A│ @X0B THANK YOU FOR USING XANADU SAVINGS @X0A│@X07"
PrintLn "@POS:5@@X0A│ │@X07"
PrintLn "@POS:5@@X0A│ LOTTERY POOL : @X0C", INTEGER007, "@POS:40@@X0A(@X0E", INTEGER007 / 25, " @X0Ato@X0E 1 payoff@X0A)", "@X0A@POS:73@│@X07"
PrintLn "@POS:5@@X0A│ ACCOUNT NUMBER:@X0B ", STRING008, "@POS:73@@X0A│@X07"
PrintLn "@POS:5@@X0A│ │@X07"
PrintLn "@POS:5@@X0A│ CREDIT ON HAND: @X03", INTEGER002, "@POS:40@@X0AACCOUNT BALANCE: @X03", INTEGER003, "@POS:73@@X0A│@X07"
PrintLn "@POS:5@@X0A│ TRANSFERRED :@X0B ", 0, "@POS:41@@X0ATRANSFER LIMIT:@X0B ", 0, "@POS:73@@X0A│@X07"
PrintLn "@POS:5@@X0A│ │@X07"
PrintLn "@POS:5@@X0A├───────────────────────────────────────────────────────────────────┤@X07"
PrintLn "@POS:5@@X0A│ @X0C(@X0EW@X0C)ITHDRAW FUNDS (@X0ED@X0C)EPOSIT FUNDS @X0A │@X07"
PrintLn "@POS:5@@X0A│ @X0C(@X0ET@X0C)RANSFER FUNDS (@X0EL@X0C)OTTERY TICKET@X0A ($25) │@X07"
PrintLn "@POS:5@@X0A│ @X0C(@X0EQ@X0C)UIT TRANSACTIONS @X0A │@X07"
PrintLn "@POS:5@@X0A└───────────────────────────────────────────────────────────────────┘@X07"
InputStr " @X0AYour Choice Soldier @X02> _", STRING005, 10, 1, "DWTLQ", 0 + 8
Select Case (STRING005)
Case "Q"
Goto LABEL010
Case "W"
Goto LABEL004
Case "D"
Goto LABEL003
Case "T"
Goto LABEL005
Case "L"
If ((INTEGER002 < 25) && (INTEGER003 < 25)) Then
Backup 80
ClrEol
PrintLn " @X0CYour low on credits, sorry!@X0F"
Delay (2 * 182) / 10
Goto LABEL002
Endif
Goto LABEL009
Case ""
Goto LABEL010
End Select
:LABEL003
Backup 80
ClrEol
InputStr " @X09How much would you like to deposit _", INTEGER006, 10, 10, Mask_Num(), 0
If (INTEGER006 == 0) Goto LABEL002
If (INTEGER006 > INTEGER002) Then
Backup 80
ClrEol
Print " @X0CYOUR ID CHIP SHOWS ONLY :@X0F", INTEGER002, "@X0C CREDITS ON HAND@X0F"
Delay (2 * 182) / 10
Goto LABEL002
Endif
INTEGER002 = INTEGER002 - INTEGER006
INTEGER003 = INTEGER006 + INTEGER003
Backup 80
ClrEol
Print " @X0CCREDIT DEPOSIT CLEARING...@X0F"
Delay (2 * 182) / 10
Goto LABEL008
:LABEL004
Backup 80
ClrEol
InputStr " @X0AHow much would you like to Withdraw _", INTEGER006, 10, 10, Mask_Num(), 0
If (ToInteger(INTEGER006) == 0) End
If (ToInteger(INTEGER006) > INTEGER003) Then
Backup 80
ClrEol
Print " @X0CYOUR AVAILABLE CREDIT IS ONLY: @X0F", INTEGER003
Delay (2 * 182) / 10
Goto LABEL002
Endif
INTEGER002 = INTEGER002 + INTEGER006
INTEGER003 = INTEGER003 - INTEGER006
Backup 80
ClrEol
Print " @X0CWITHDRAWAL BEING CLEARED...@X0F"
Delay (2 * 182) / 10
Goto LABEL008
:LABEL005
Backup 80
ClrEol
InputStr " @X0EWho would you like to transfer @X0Acredits@X0E to @X02>@X0F _", STRING004, 10, 25, Mask_Ascii(), 0 + 8
If (STRING004 == "") Goto LABEL002
STRING003 = String(Random(1000)) + "X" + STRING002
DOpen 0, PPEPath() + "USER.DBF", 0
DnCreate 0, PPEPath() + STRING003, "HANDLE"
DSeek 0, STRING004
If (DChkStat(0) > 0) Goto LABEL006
INTEGER004 = DRecNo(0)
DGet 0, "BANKED", INTEGER005
DGet 0, "FILE_NUM", STRING008
DCloseAll
Delete PPEPath() + STRING003 + ".NDX"
Goto LABEL007
:LABEL006
Backup 80
ClrEol
Print " @X0CSorry, But that Soldier hasn't got an account here.@X0F"
Delay (3 * 182) / 10
Goto LABEL002
:LABEL007
Backup 80
ClrEol
Print " @X0EHow many credits to transfer into@X0C ", STRING004, "'s@X0E account@X0A "
InputStr "_", INTEGER006, 11, 10, Mask_Num(), 0
If (INTEGER006 == "") Goto LABEL007
If (INTEGER003 < INTEGER006) Then
Backup 80
ClrEol
Print " @X0CYOUR AVAILABLE CREDIT IS ONLY :@X0F", INTEGER003
Delay (3 * 182) / 10
Goto LABEL002
Endif
DCloseAll
DOpen 0, PPEPath() + "USER.DBF", 0
DGo 0, INTEGER004
DPut 0, "BANKED", INTEGER005
INTEGER005 = INTEGER005 + INTEGER006
INTEGER003 = INTEGER003 - INTEGER006
DCloseAll
Backup 80
ClrEol
PrintLn " @X0C TRANSFER TO@X0A ", STRING004, "@X0C PROCESSING...@X0F"
FAppend 1, PPEPath() + STRING008 + ".MSG", 2, 0
FPutLn 1, "@X0A" + String(Date()) + " " + "FROM @X0E:@X0CCENTRAL BANK"
FPutLn 1, "@X0E" + STRING007 + "@X0B Transferred :@X02 " + String(INTEGER006) + "@X0B credits to your account."
FPutLn 1, STRING006
FClose 1
Delay (3 * 182) / 10
:LABEL008
DCloseAll
DOpen 5, PPEPath() + "USER.DBF", 0
DGo 5, INTEGER001
DPut 5, "CASH", INTEGER002
DPut 5, "BANKED", INTEGER003
DPut 5, "TRSF_AMT", INTEGER010 + INTEGER006
DCloseAll
Goto LABEL002
:LABEL009
If (INTEGER002 < 25) Then
INTEGER003 = INTEGER003 - 25
Else
INTEGER002 = INTEGER002 - 25
Endif
TINTEGER011(1) = Random(2)
TINTEGER011(2) = Random(2)
TINTEGER011(3) = Random(2)
TINTEGER014(1) = Random(2)
TINTEGER014(2) = Random(2)
TINTEGER014(3) = Random(2)
INTEGER015 = 0
Backup 80
ClrEol
PrintLn "@POS:23@@X0A┌──────────────────────────────┐@X0F"
PrintLn "@POS:23@@X0A│ @X0BXanadu Global Lottery System @X0A│@X0F"
PrintLn "@POS:23@@X0A└──────────┬──────┬────────────┘@X0F"
For INTEGER013 = 1 To 3
For INTEGER012 = 1 To 10
Backup 80
ClrEol
Print "@POS:34@@X0A│@X05 ", Random(2), "@X0F "
Delay 1
Next
Backup 80
ClrEol
Print "@POS:34@@X0A│@X0D ", TINTEGER011(INTEGER013), " ", "@POS:36@@X09 ", TINTEGER014(INTEGER013), "@X0A │@X0F"
If (TINTEGER011(INTEGER013) == TINTEGER014(INTEGER013)) Then
Print " @X8CMatch!@X07"
Inc INTEGER015
Endif
Newline
Next
PrintLn "@POS:34@@X0A└──────┘@X0F"
If (INTEGER015 == 3) Then
PrintLn "@POS:34@ @X82Winner!@X0F"
INTEGER002 = INTEGER002 + INTEGER007
DOpen 4, PPEPath() + "VRS.DBF", 0
DTop 4
INTEGER007 = 0
DPut 4, "LOTTO", INTEGER007
DCloseAll
Endif
If (INTEGER015 < 3) Then
DOpen 3, PPEPath() + "VRS.DBF", 0
DTop 3
INTEGER007 = INTEGER007 + 25
DPut 3, "LOTTO", INTEGER007
DCloseAll
PrintLn "@POS:34@ @X8ELOSER!@X0F"
Endif
Delay (3 * 182) / 10
Goto LABEL008
:LABEL010
DCloseAll
Delete PPEPath() + STRING003 + ".NDX"
End
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 3 End
; 2 Cls
; 15 ClrEol
; 45 Goto
; 34 Let
; 10 Print
; 39 PrintLn
; 24 If
; 1 FAppend
; 1 FClose
; 3 FPutLn
; 2 Delete
; 5 InputStr
; 10 Delay
; 1 Inc
; 1 Newline
; 1 Call
; 15 Backup
; 1 EndFunc
; 7 DOpen
; 10 DCloseAll
; 1 DnCreate
; 3 DTop
; 3 DGo
; 1 DSeek
; 9 DGet
; 6 DPut
;
;
; ■ Functions used :
;
; 9 *
; 10 /
; 35 +
; 5 -
; 15 ==
; 7 <
; 2 <=
; 3 >
; 4 >=
; 16 !
; 5 &&
; 2 ||
; 1 Trim()
; 8 Random()
; 1 Date()
; 4 String()
; 3 Mask_Num()
; 1 Mask_Ascii()
; 12 PPEPath()
; 2 PcbNode()
; 1 GetEnv()
; 3 ToInteger()
; 1 Mixed()
; 2 DRecNo()
; 1 DGet()
; 1 DChkStat()
;
;------------------------------------------------------------------------------
;
; Analysis flags : C
;
; C - Call child PPE ■ 3
; This is usually normal, but may be a tricky way to launch some
; sysop-only commands.
; ■ Search for : CALL
;
;------------------------------------------------------------------------------
;
; Postprocessing report
;
; 2 For/Next
; 0 While/EndWhile
; 8 If/Then or If/Then/Else
; 1 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------